package com.opentae.data.mall.examples;

import com.opentae.core.mybatis.SgExample;
import com.opentae.core.mybatis.example.EntityColumn;
import com.opentae.core.mybatis.example.EntityTable;
import com.opentae.core.mybatis.mapperhelper.EntityHelper;
import com.opentae.data.mall.beans.GoatItemInfo;

import java.util.*;
public class GoatItemInfoExample extends SgExample<GoatItemInfoExample.Criteria> {
    public static final Class<GoatItemInfo> beanClass = GoatItemInfo.class;
    public static final EntityTable entityTable = EntityHelper.getEntityTable(beanClass);
    public static EntityColumn recommon;
    public static EntityColumn goatId;
    public static EntityColumn sort;
    public static EntityColumn localId;
    static {
        Set<EntityColumn> columns = entityTable.getEntityClassColumns();
        Map<String, EntityColumn> listMap = new HashMap<>();
        for (EntityColumn column : columns) {
            listMap.put(column.getProperty(), column);
        }
        recommon = listMap.get("recommon");
        goatId = listMap.get("goatId");
        sort = listMap.get("sort");
        localId = listMap.get("localId");
        }

    public GoatItemInfoExample() {
        this.setTableAlias(entityTable.getName());
    }

    @Override
    public EntityTable getEntityTable() {
        return entityTable;
    }

    @Override
    protected GoatItemInfoExample.Criteria createCriteriaInternal() {
        return new GoatItemInfoExample.Criteria(this);
    }

    public static class Criteria extends SgExample.GeneratedCriteria<Criteria> {
        protected Criteria(SgExample example) {
            super(example);
        }

        public GoatItemInfoExample.Criteria andRecommonIsNull() {
            return isNull(recommon);
        }

        public GoatItemInfoExample.Criteria andRecommonIsNotNull() {
            return isNotNull(recommon);
        }

        public GoatItemInfoExample.Criteria andRecommonEqualTo(String value) {
            return equalTo(recommon, value);
        }

        public GoatItemInfoExample.Criteria andRecommonNotEqualTo(String value) {
            return notEqualTo(recommon, value);
        }

        public GoatItemInfoExample.Criteria andRecommonGreaterThan(String value) {
            return greaterThan(recommon, value);
        }

        public GoatItemInfoExample.Criteria andRecommonGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(recommon, value);
        }

        public GoatItemInfoExample.Criteria andRecommonLessThan(String value) {
            return lessThan(recommon, value);
        }

        public GoatItemInfoExample.Criteria andRecommonLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(recommon, value);
        }

        public GoatItemInfoExample.Criteria andRecommonLike(String value) {
            return like(recommon, value);
        }

        public GoatItemInfoExample.Criteria andRecommonNotLike(String value) {
            return notLike(recommon, value);
        }

        public GoatItemInfoExample.Criteria andRecommonIn(List<String> values) {
            return in(recommon, values);
        }

        public GoatItemInfoExample.Criteria andRecommonNotIn(List<String> values) {
            return notIn(recommon, values);
        }

        public GoatItemInfoExample.Criteria andRecommonBetween(String value1, String value2) {
            return between(recommon, value1, value2);
        }

        public GoatItemInfoExample.Criteria andRecommonNotBetween(String value1, String value2) {
            return notBetween(recommon, value1, value2);
        }
        public GoatItemInfoExample.Criteria andGoatIdIsNull() {
            return isNull(goatId);
        }

        public GoatItemInfoExample.Criteria andGoatIdIsNotNull() {
            return isNotNull(goatId);
        }

        public GoatItemInfoExample.Criteria andGoatIdEqualTo(Long value) {
            return equalTo(goatId, value);
        }

        public GoatItemInfoExample.Criteria andGoatIdNotEqualTo(Long value) {
            return notEqualTo(goatId, value);
        }

        public GoatItemInfoExample.Criteria andGoatIdGreaterThan(Long value) {
            return greaterThan(goatId, value);
        }

        public GoatItemInfoExample.Criteria andGoatIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(goatId, value);
        }

        public GoatItemInfoExample.Criteria andGoatIdLessThan(Long value) {
            return lessThan(goatId, value);
        }

        public GoatItemInfoExample.Criteria andGoatIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(goatId, value);
        }

        public GoatItemInfoExample.Criteria andGoatIdIn(List<Long> values) {
            return in(goatId, values);
        }

        public GoatItemInfoExample.Criteria andGoatIdNotIn(List<Long> values) {
            return notIn(goatId, values);
        }

        public GoatItemInfoExample.Criteria andGoatIdBetween(Long value1, Long value2) {
            return between(goatId, value1, value2);
        }

        public GoatItemInfoExample.Criteria andGoatIdNotBetween(Long value1, Long value2) {
            return notBetween(goatId, value1, value2);
        }
        public GoatItemInfoExample.Criteria andSortIsNull() {
            return isNull(sort);
        }

        public GoatItemInfoExample.Criteria andSortIsNotNull() {
            return isNotNull(sort);
        }

        public GoatItemInfoExample.Criteria andSortEqualTo(Integer value) {
            return equalTo(sort, value);
        }

        public GoatItemInfoExample.Criteria andSortNotEqualTo(Integer value) {
            return notEqualTo(sort, value);
        }

        public GoatItemInfoExample.Criteria andSortGreaterThan(Integer value) {
            return greaterThan(sort, value);
        }

        public GoatItemInfoExample.Criteria andSortGreaterThanOrEqualTo(Integer value) {
            return greaterThanOrEqualTo(sort, value);
        }

        public GoatItemInfoExample.Criteria andSortLessThan(Integer value) {
            return lessThan(sort, value);
        }

        public GoatItemInfoExample.Criteria andSortLessThanOrEqualTo(Integer value) {
            return lessThanOrEqualTo(sort, value);
        }

        public GoatItemInfoExample.Criteria andSortIn(List<Integer> values) {
            return in(sort, values);
        }

        public GoatItemInfoExample.Criteria andSortNotIn(List<Integer> values) {
            return notIn(sort, values);
        }

        public GoatItemInfoExample.Criteria andSortBetween(Integer value1, Integer value2) {
            return between(sort, value1, value2);
        }

        public GoatItemInfoExample.Criteria andSortNotBetween(Integer value1, Integer value2) {
            return notBetween(sort, value1, value2);
        }
        public GoatItemInfoExample.Criteria andLocalIdIsNull() {
            return isNull(localId);
        }

        public GoatItemInfoExample.Criteria andLocalIdIsNotNull() {
            return isNotNull(localId);
        }

        public GoatItemInfoExample.Criteria andLocalIdEqualTo(Long value) {
            return equalTo(localId, value);
        }

        public GoatItemInfoExample.Criteria andLocalIdNotEqualTo(Long value) {
            return notEqualTo(localId, value);
        }

        public GoatItemInfoExample.Criteria andLocalIdGreaterThan(Long value) {
            return greaterThan(localId, value);
        }

        public GoatItemInfoExample.Criteria andLocalIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(localId, value);
        }

        public GoatItemInfoExample.Criteria andLocalIdLessThan(Long value) {
            return lessThan(localId, value);
        }

        public GoatItemInfoExample.Criteria andLocalIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(localId, value);
        }

        public GoatItemInfoExample.Criteria andLocalIdIn(List<Long> values) {
            return in(localId, values);
        }

        public GoatItemInfoExample.Criteria andLocalIdNotIn(List<Long> values) {
            return notIn(localId, values);
        }

        public GoatItemInfoExample.Criteria andLocalIdBetween(Long value1, Long value2) {
            return between(localId, value1, value2);
        }

        public GoatItemInfoExample.Criteria andLocalIdNotBetween(Long value1, Long value2) {
            return notBetween(localId, value1, value2);
        }
    }
}
